package cn.xz.zgsg.util

import java.security.MessageDigest
import java.security.NoSuchAlgorithmException

object MD5Utils {
    /**
     * MD5加密，获得32位字符串(小写)
     * @param password
     * @return
     */
    fun getMD5(password: String): String {
        return try {
            // 得到一个信息摘要器
            val digest = MessageDigest.getInstance("md5")
            val result = digest.digest(password.toByteArray())
            val buffer = StringBuffer()
            // 把每一个byte 做一个与运算 0xff;
            for (b in result) {
                // 与运算
                val number = b.toInt() and 0xff // 加盐
                val str = Integer.toHexString(number)
                if (str.length == 1) {
                    buffer.append("0")
                }
                buffer.append(str)
            }

            // 标准的md5加密后的结果
            buffer.toString()
        } catch (e: NoSuchAlgorithmException) {
            e.printStackTrace()
            ""
        }
    }
}